Practical algorithms for unsatisfiability proof and core generation in SAT solvers

نویسندگان

  • Roberto Javier Asín Achá
  • Robert Nieuwenhuis
  • Albert Oliveras
  • Enric Rodríguez-Carbonell
چکیده

Since Zhang and Malik’s work in 2003 [ZM03], it is well-known that modern DPLL-based SAT solvers with learning can be instrumented to write a trace on disk from which, if the input is unsatisfiable, a resolution proof can be extracted (and checked), and hence also an unsatisfiable core: a (frequently small) unsatisfiable subset of the input clauses. In this article we first give a new algorithmic approach for processing these (frequently huge) traces. It achieves the efficiency of a depth-first traversal, while preserving the property that memory usage remains upper bounded by that of the SAT solver that generated the trace. The second part of this article is about in-memory algorithms for generating SAT proofs and cores, without writing traces to disk. We discuss advantages and disadvantages of this approach and investigate why the current SAT solvers with this feature still run out of memory on long SAT runs. We analyze several of these in-memory algorithms, based on carefully designed experiments with our implementation of each one of them, as well as with (our implementation of) a trace-based one. Then we describe a new in-memory algorithm which saves space by doing more bookkeeping to discard unnecessary information, and show that it can handle significantly more instances than the previously existing algorithms, at a negligible expense in time. Technical Univ. of Catalonia, Barcelona. Partially supported by Spanish Min. of Educ. and Science through the LogicTools-2 project, ref. TIN2007-68093-C02-01.

برای دانلود رایگان متن کامل این مقاله و بیش از 32 میلیون مقاله دیگر ابتدا ثبت نام کنید

ثبت نام

اگر عضو سایت هستید لطفا وارد حساب کاربری خود شوید

منابع مشابه

On Using Unsatisfiability for Solving Maximum Satisfiability

Maximum Satisfiability (MAXSAT) is a well-known optimization problem, with several practical applications. The most widely known MAXSAT algorithms are ineffective at solving hard problems instances from practical application domains. Recent work proposed using efficient Boolean Satisfiability (SAT) solvers for solving the MAXSAT problem, based on identifying and eliminating unsatisfiable subfor...

متن کامل

Satisfiability Solvers

Satisfiability (SAT) solvers have become powerful tools to solve a wide range of applications. In case SAT problems are satisfiable, it is easy to validate a witness. However, if SAT problems have no solutions, a proof of unsatisfiability is required to validate that result. Apart from validation, proofs of unsatisfiability are useful in several applications, such as interpolation [50] and extr...

متن کامل

Read-Once Resolution for Unsatisfiability-Based Max-SAT Algorithms

This paper proposes the integration of the resolution rule for Max-SAT with unsatisfiability-based Max-SAT solvers. First, we show that the resolution rule for Max-SAT can be safely applied as dictated by the resolution proof associated with an unsatisfiable core when such proof is read-once, that is, each clause is used at most once in the resolution process. Second, we study how this property...

متن کامل

Bridging the gap between easy generation and efficient verification of unsatisfiability proofs

Several proof formats have been used to verify refutations produced by satisfiability (SAT) solvers. Existing formats are either costly to check or hard to implement. This paper presents a practical approach that facilitates checking of unsatisfiability results in a time similar to proof discovery by embedding clause deletion information into clausal proofs. By exploiting this information, the ...

متن کامل

Improved Single Pass Algorithms for Resolution Proof Reduction - (Poster Presentation)

An unsatisfiability proof is a series of applications of proof rules on an input formula to deduce false. Unsatisfiability proofs for a Boolean formula can find many applications in verification. For instance, one application is automatic learning of abstractions for unbounded model checking by analyzing proofs of program safety for bounded steps [6, 5, 4]. We can also learn unsatisfiable cores...

متن کامل

ذخیره در منابع من


  با ذخیره ی این منبع در منابع من، دسترسی به آن را برای استفاده های بعدی آسان تر کنید

عنوان ژورنال:
  • AI Commun.

دوره 23  شماره 

صفحات  -

تاریخ انتشار 2010